package com.ruoyi.book.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 图书委托对象 book_commission
 * 
 * @author hd
 * @date 2025-03-31
 */
public class BookCommission extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 委托ID */
    @Excel(name = "委托ID")
    private Long commissionId;

    /** 书名 */
    @Excel(name = "书名")
    private String bookTitle;

    /** 索书号 */
    @Excel(name = "索书号")
    private String callNumber;

    /** 条码号 */
    @Excel(name = "条码号")
    private String barcode;

    /** 出版社 */
    @Excel(name = "出版社")
    private String publisherInfo;

    /** ISBN */
    @Excel(name = "ISBN")
    private String isbn;

    /** 封面 */
    @Excel(name = "封面")
    private String bookCoverUrl;

    /** 书籍位置 */
    @Excel(name = "书籍位置")
    private String locationInfo;

    /** 委托人ID */
    @Excel(name = "委托人ID")
    private String userId;

    /** 委托人 */
    @Excel(name = "委托人")
    private String userName;

    /** 委托电话 */
    @Excel(name = "委托电话")
    private String userPhone;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date deliveryPeriodStart;

    /** 截止时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "截止时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date deliveryPeriodEnd;

    /** 目的地 */
    @Excel(name = "目的地")
    private String deliveryLocation;

    /** 备注 */
    @Excel(name = "备注")
    private String notes;

    /** 接单人ID */
    @Excel(name = "接单人ID")
    private String acceptorId;

    /** 接单学号 */
    @Excel(name = "接单学号")
    private String acceptorStudentId;

    /** 接单人 */
    @Excel(name = "接单人")
    private String acceptorName;

    /** 接单电话 */
    @Excel(name = "接单电话")
    private String acceptorPhone;

    /** 状态 */
    @Excel(name = "状态")
    private Long status;

    /** 评分 */
    @Excel(name = "评分")
    private Long rating;

    /** 评价 */
    @Excel(name = "评价")
    private String review;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date createdAt;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date updatedAt;

    /** 学校ID */
    @Excel(name = "学校ID")
    private Long institutionId;

    /** 学校名称 */
    @Excel(name = "学校名称")
    private String institutionName;


    public void setCommissionId(Long commissionId) 
    {
        this.commissionId = commissionId;
    }

    public Long getCommissionId() 
    {
        return commissionId;
    }
    public void setBookTitle(String bookTitle) 
    {
        this.bookTitle = bookTitle;
    }

    public String getBookTitle() 
    {
        return bookTitle;
    }
    public void setCallNumber(String callNumber) 
    {
        this.callNumber = callNumber;
    }

    public String getCallNumber() 
    {
        return callNumber;
    }
    public void setBarcode(String barcode) 
    {
        this.barcode = barcode;
    }

    public String getBarcode() 
    {
        return barcode;
    }
    public void setPublisherInfo(String publisherInfo) 
    {
        this.publisherInfo = publisherInfo;
    }

    public String getPublisherInfo() 
    {
        return publisherInfo;
    }
    public void setIsbn(String isbn) 
    {
        this.isbn = isbn;
    }

    public String getIsbn() 
    {
        return isbn;
    }
    public void setBookCoverUrl(String bookCoverUrl) 
    {
        this.bookCoverUrl = bookCoverUrl;
    }

    public String getBookCoverUrl() 
    {
        return bookCoverUrl;
    }
    public void setLocationInfo(String locationInfo) 
    {
        this.locationInfo = locationInfo;
    }

    public String getLocationInfo() 
    {
        return locationInfo;
    }
    public void setUserId(String userId) 
    {
        this.userId = userId;
    }

    public String getUserId() 
    {
        return userId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setUserPhone(String userPhone) 
    {
        this.userPhone = userPhone;
    }

    public String getUserPhone() 
    {
        return userPhone;
    }
    public void setDeliveryPeriodStart(Date deliveryPeriodStart) 
    {
        this.deliveryPeriodStart = deliveryPeriodStart;
    }

    public Date getDeliveryPeriodStart() 
    {
        return deliveryPeriodStart;
    }
    public void setDeliveryPeriodEnd(Date deliveryPeriodEnd) 
    {
        this.deliveryPeriodEnd = deliveryPeriodEnd;
    }

    public Date getDeliveryPeriodEnd() 
    {
        return deliveryPeriodEnd;
    }
    public void setDeliveryLocation(String deliveryLocation) 
    {
        this.deliveryLocation = deliveryLocation;
    }

    public String getDeliveryLocation() 
    {
        return deliveryLocation;
    }
    public void setNotes(String notes) 
    {
        this.notes = notes;
    }

    public String getNotes() 
    {
        return notes;
    }
    public void setAcceptorId(String acceptorId) 
    {
        this.acceptorId = acceptorId;
    }

    public String getAcceptorId() 
    {
        return acceptorId;
    }
    public void setAcceptorStudentId(String acceptorStudentId) 
    {
        this.acceptorStudentId = acceptorStudentId;
    }

    public String getAcceptorStudentId() 
    {
        return acceptorStudentId;
    }
    public void setAcceptorName(String acceptorName) 
    {
        this.acceptorName = acceptorName;
    }

    public String getAcceptorName() 
    {
        return acceptorName;
    }
    public void setAcceptorPhone(String acceptorPhone) 
    {
        this.acceptorPhone = acceptorPhone;
    }

    public String getAcceptorPhone() 
    {
        return acceptorPhone;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setRating(Long rating) 
    {
        this.rating = rating;
    }

    public Long getRating() 
    {
        return rating;
    }
    public void setReview(String review) 
    {
        this.review = review;
    }

    public String getReview() 
    {
        return review;
    }
    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }
    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }
    public void setInstitutionId(Long institutionId) 
    {
        this.institutionId = institutionId;
    }

    public Long getInstitutionId() 
    {
        return institutionId;
    }

    public String getInstitutionName() {
        return institutionName;
    }

    public void setInstitutionName(String institutionName) {
        this.institutionName = institutionName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("commissionId", getCommissionId())
            .append("bookTitle", getBookTitle())
            .append("callNumber", getCallNumber())
            .append("barcode", getBarcode())
            .append("publisherInfo", getPublisherInfo())
            .append("isbn", getIsbn())
            .append("bookCoverUrl", getBookCoverUrl())
            .append("locationInfo", getLocationInfo())
            .append("userId", getUserId())
            .append("userName", getUserName())
            .append("userPhone", getUserPhone())
            .append("deliveryPeriodStart", getDeliveryPeriodStart())
            .append("deliveryPeriodEnd", getDeliveryPeriodEnd())
            .append("deliveryLocation", getDeliveryLocation())
            .append("notes", getNotes())
            .append("acceptorId", getAcceptorId())
            .append("acceptorStudentId", getAcceptorStudentId())
            .append("acceptorName", getAcceptorName())
            .append("acceptorPhone", getAcceptorPhone())
            .append("status", getStatus())
            .append("rating", getRating())
            .append("review", getReview())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .append("institutionId", getInstitutionId())
            .append("institutionName", getInstitutionName())
            .toString();
    }
}
